今天,我們將來實際操作在 Elastic Stack 上,使用機器學習做異常偵測的功能。
本篇的主題包含有:
那我們就開始吧!
這一部分的實作,我們將可以學到:
一般在開始使用機器學習建構模型之前,我們都會先對資料做一定的探索,掌握一些基本特性,這邊我們先從 Kibana 開始吧!
Management
頁面,按下 Start trial
:Machine learning
的部分,然後我們在左邊的面板點進 Machine learning
:Data Visualizer
tab,選擇 Select Index
:filebeat-*
,來看看後面的頁面會是怎樣呈現這個資料,進去後記得點選 Use full filebeat-* data
:security-analytics-packetbeat-*
:Use full security-analytics-packetbeat-* data
:剩下資料探索有興趣的人可以在裡面各種點,看看能不能找出一些有趣的發現歐!(例如說哪個 client 發了最多的請求,一般直覺會覺得這種 client 怪怪的)
Discover
,然後調整資料的時間範圍到 Last 1 year
:Add filter
,Field 選擇 system.auth.ssh.event
,Operator 選擇 is one of
,Values 選擇 Failed
和 Invalid
,都選擇好後按下 Save
:這個步驟代表要過濾的條件是依據 system.auth.ssh.event
這個資料欄位,只要出現 Failed
或 Invalid
其中一種,就要留下來。
Save
來把過濾後的資料儲存起來,在 Title 填入你想要的名稱,這邊我們就用 failed or invalid events
,然後按下 Save
:Machine learning
下,按下 Create job
:failed or invalid events
,然後選 Single metric
:Use full filebeat-* data
後,按下 Next
:High count(Event data)
,Bucket span 輸入 5m
,然後按下 Next
:suspicious_login_single_metric
,然後按下 Next
:Valid and long enough to model patterns in the data
,代表這樣的資料足夠拿來訓練機器學習的模型,然後按下 Next:Create job
:今天我們實際操作在 Elastic Stack 上,使用機器學習做異常偵測的功能,面對每天大量資料進來、各種複雜的行為與系統資訊,這時候如果沒有這種自動化模型的判斷和預警,靠人力根本防不勝防啊!
明天,我們就要進入到最後一部分的篇章:Elastic Cloud Enterprise 基礎了!終於快要跑到終點啦!大家加油!!